Skip to content

Latest commit

 

History

History
40 lines (31 loc) · 931 Bytes

11.1.1 - setHandler.md

File metadata and controls

40 lines (31 loc) · 931 Bytes

setHandler

设置Redis命令字的处理器。

function swoole_redis_server->setHandler(string $command, callable $callback);
  • $command 命令的名称
  • $callback 命令的处理函数,回调函数返回字符串类型时会自动发送给客户端
  • $callback 返回的数据必须为Redis格式,可使用format静态方法进行打包

服务器实例

use Swoole\Redis\Server;

$server = new Server('127.0.0.1', 9501);

//同步模式
$server->setHandler('Set', function($fd, $data) use ($server) {
    $server->array($data[0], $data[1]);
    return Server::format(Server::INT, 1);
});

//异步模式
$server->setHandler('Get', function ($fd, $data) use ($server) {
	$db->query($sql, function($db, $result) use ($fd) {
		$server->send($fd, Server::format(Server::LIST, $result));
	});
});

$server->start();

客户端实例

redis-cli -h 127.0.0.1 -p 9501 set name rango